package com.sc.entity.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

/**
 * 学生表 表定义层。
 *
 * @author JoeZhou
 * @since 2024-09-14
 */
public class StudentTableDef extends TableDef {

    /**
     * 学生表
     */
    public static final StudentTableDef STUDENT = new StudentTableDef();

    
    public final QueryColumn ID = new QueryColumn(this, "ID");

    /**
     * QQ
     */
    public final QueryColumn QQ = new QueryColumn(this, "qq");

    /**
     * 编号
     */
    public final QueryColumn SNO = new QueryColumn(this, "sno");

    /**
     * 备注
     */
    public final QueryColumn INFO = new QueryColumn(this, "info");

    /**
     * 姓名
     */
    public final QueryColumn NAME = new QueryColumn(this, "name");

    /**
     * 电话
     */
    public final QueryColumn PHONE = new QueryColumn(this, "phone");

    /**
     * 性别
     */
    public final QueryColumn GENDER = new QueryColumn(this, "gender");

    /**
     * 身份证
     */
    public final QueryColumn ID_CARD = new QueryColumn(this, "id_card");

    /**
     * 密码（默认为123456）
     */
    public final QueryColumn PASSWD = new QueryColumn(this, "passwd");

    /**
     * 状态
     */
    public final QueryColumn STATUS = new QueryColumn(this, "status");

    /**
     * 微信
     */
    public final QueryColumn WECHAT = new QueryColumn(this, "wechat");

    /**
     * 班级ID（外键）
     */
    public final QueryColumn CLAZZ_ID = new QueryColumn(this, "clazz_id");

    /**
     * 创建时间
     */
    public final QueryColumn CREATED = new QueryColumn(this, "created");

    /**
     * 年级
     */
    public final QueryColumn GRADE_ID = new QueryColumn(this, "grade_id");

    /**
     * 专业
     */
    public final QueryColumn MAJOR_ID = new QueryColumn(this, "major_id");

    /**
     * 更新时间
     */
    public final QueryColumn UPDATED = new QueryColumn(this, "updated");

    /**
     * 版本
     */
    public final QueryColumn VERSION = new QueryColumn(this, "version");

    
    public final QueryColumn IS_DELETE = new QueryColumn(this, "is_delete");

    /**
     * 学校
     */
    public final QueryColumn SCHOOL_ID = new QueryColumn(this, "school_id");

    /**
     * 班级名称
     */
    public final QueryColumn CLAZZ_NAME = new QueryColumn(this, "clazz_name");

    /**
     * 学院
     */
    public final QueryColumn COLLAGE_ID = new QueryColumn(this, "collage_id");

    /**
     * 销售
     */
    public final QueryColumn SALESMAN_ID = new QueryColumn(this, "salesman_id");

    /**
     * 所有字段。
     */
    public final QueryColumn ALL_COLUMNS = new QueryColumn(this, "*");

    /**
     * 默认字段，不包含逻辑删除或者 large 等字段。
     */
    public final QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, SNO, PASSWD, NAME, GRADE_ID, SCHOOL_ID, COLLAGE_ID, MAJOR_ID, GENDER, PHONE, WECHAT, QQ, SALESMAN_ID, CLAZZ_ID, CLAZZ_NAME, ID_CARD, STATUS, INFO, IS_DELETE, CREATED, UPDATED, VERSION};

    public StudentTableDef() {
        super("study_club", "sms_student");
    }

}
